Learn R Programming

CompositionalSR (version 1.1)

The alpha-SLX model: The \(\alpha\)-SLX model

Description

The \(\alpha\)-SLX model.

Usage

alfa.slx(y, x, a, coords, k = 10, covb = FALSE, xnew = NULL, coordsnew, yb = NULL)
alfa.slx2(y, x, a, coords, k = 2:15, xnew = NULL, coordsnew, yb = NULL)

Value

For the alfa.slx() a list including:

runtime

The time required by the regression.

be

The beta coefficients.

gama

The gamma coefficients.

covbe

The covariance matrix if covb was set to TRUE, otherwise NULL.

dev

The sum of the squared residuals, as produced by the function minpack.lm::nls.lm().

est

The fitted values for xnew if xnew and coordsnew are not NULL.

For the alfa.slx2() a list including:

runtime

The time required by the regression.

be

A list with the beta coefficients for each value of k.

gama

A list with the gamma coefficients.

dev

A vector with the sum of the squared residuals, as produced by the function minpack.lm::nls.lm(). The positions of the vector are the ones defined by the argument k that is a vector.

est

A list with the fitted values for the xnew and coordsnew, for each value of k.

Arguments

y

A matrix with the compositional data.

x

A matrix with the continuous predictor variables or a data frame including categorical predictor variables.

a

The value of the power transformation, it has to be between -1 and 1. If zero values are present it has to be greater than 0. If \(\alpha=0\) the isometric log-ratio transformation is applied and the solution exists in a closed form, since it the classical mutivariate regression.

coords

A matrix with the coordinates of the locations. The first column is the latitude and the second is the longitude.

k

The number of nearest neighbours to consider for the contiguity matrix. For the alfa.slx2() this should be a vector.

covb

Do you want the covariance matrix of the regression coefficients to be returned? If TRUE, this will slow down the process, as it is computed numerically.

xnew

If you have new data use it, otherwise leave it NULL.

coordsnew

A matrix with the coordinates of the new locations. The first column is the latitude and the second is the longitude. If you do not have new data to make predictions leave this NULL.

yb

If you have already transformed the data using the \(\alpha\)-transformation with the same \(\alpha\) as given in the argument "a", put it here. Othewrise leave it NULL.

This is intended to be used in the function cv.alfareg in order to speed up the process. The time difference in that function is small for small samples. But, if you have a few thousands and or a few more components, there will be bigger differences.

Author

Michail Tsagris.

R implementation and documentation: Michail Tsagris mtsagris@uoc.gr.

Details

The \(\alpha\)-transformation is applied to the compositional data first and then the spatially lagged X (SLX) model is applied.

References

Tsagris M. (2025). The \(\alpha\)--regression for compositional data: a unified framework for standard, spatially-lagged, spatial autoregressive and geographically-weighted regression models. https://arxiv.org/pdf/2510.12663

Tsagris M. (2015). Regression analysis with compositional data containing zero values. Chilean Journal of Statistics, 6(2): 47-57. https://arxiv.org/pdf/1508.01913v1.pdf

Tsagris M.T., Preston S. and Wood A.T.A. (2011). A data-based power transformation for compositional data. In Proceedings of the 4th Compositional Data Analysis Workshop, Girona, Spain. https://arxiv.org/pdf/1106.1451.pdf

See Also

cv.alfaslx, me.aslx, gwar, alfa.reg

Examples

Run this code
data(fadn)
coords <- fadn[, 1:2]
y <- fadn[, 3:7]
x <- fadn[, 8]
mod <- alfa.slx(y, x, a = 0.5, coords, k = 10)

Run the code above in your browser using DataLab